home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / gnustuff / tos / updates / update35.zoo / lib / diffc
Encoding:
Text File  |  1993-11-17  |  18.9 KB  |  655 lines

  1. ===================================================================
  2. RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/Changelo,v
  3. retrieving revision 1.101
  4. diff -c -r1.101 Changelo
  5. *** 1.101    1993/10/26 23:51:25
  6. --- Changelo    1993/11/17 17:07:22
  7. ***************
  8. *** 4282,4284 ****
  9. --- 4282,4441 ----
  10.       make groups limit 0 for non-MiNT
  11.   
  12.   ---------------------------- Patchlevel 94 ---------------------------
  13. + === synch with mntlib39
  14. + ***** include/errno.h
  15. + ----------------------------
  16. + revision 38.2    
  17. + date: 1993/10/21 16:21:30;  author: entropy;  state: Exp;  lines: +1 -0
  18. + Add ENOTEMPTY as alias for EEXIST (POSIX).
  19. + =============================================================================
  20. + ***** include/limits.h
  21. + ----------------------------
  22. + revision 38.3    
  23. + date: 1993/10/23 18:44:56;  author: entropy;  state: Exp;  lines: +17 -18
  24. + Raised some arbitrary limits (or changed to actual limit, as in the case
  25. + of _POSIX_OPEN_MAX).  Rearranged things a bit for consistency.
  26. + ----------------------------
  27. + revision 38.2
  28. + date: 1993/10/23 18:28:52;  author: entropy;  state: Exp;  lines: +4 -0
  29. + Set _POSIX_NGROUPS_MAX to 0 when not __MINT__.
  30. + Thanks to ntomczak@vm.ucs.ualberta.ca for the bug report.
  31. + =============================================================================
  32. + ***** include/time.h
  33. + ----------------------------
  34. + revision 38.2    
  35. + date: 1993/10/25 10:00:30;  author: entropy;  state: Exp;  lines: +7 -2
  36. + Update select() prototype to use fd_set * for arguments, and
  37. + make some stuff !_POSIX_SOURCE.
  38. + =============================================================================
  39. + ***** include/types.h
  40. + ----------------------------
  41. + revision 38.2    
  42. + date: 1993/10/25 09:59:28;  author: entropy;  state: Exp;  lines: +4 -1
  43. + Allow fd_set definition to be gotten from time.h too.
  44. + =============================================================================
  45. + ***** include/wait.h
  46. + ----------------------------
  47. + revision 38.2    
  48. + date: 1993/10/24 18:47:48;  author: nox;  state: Exp;  lines: +1 -1
  49. + Some older versions of GCC trip over the new wait macros...so
  50. + it's better not to use them for now.
  51. + =============================================================================
  52. + == end sync
  53. + read.c:: michal
  54. +     replace the echochar()/delchar() macros with safer ones, and
  55. +     ones that dont solicit warnings from the compiler.
  56. + mincl:: michal
  57. +     build bzero/memset together when building bzero.o. doing
  58. +     them seperately saves only 12 bytes, but causes jump
  59. +     to become long (again not that much of a big deal, as
  60. +     those jumps happen once)
  61. + osbind.h: ++jrb
  62. +     relax the constraints on the inputs of trap_14_wwwwwww (only
  63. +     Rsconf maps to this)  to "g" from "r", as these many "r" 's
  64. +     give gcc 2.>3.X heartaches (understandably). note this is ok
  65. +     since these args will never be expressions, and we never
  66. +     have to constrain hard enough to force eval before we change
  67. +     sp from underneath gcc.
  68. + qsort.c: ++jrb
  69. +     adjust order of inclusion of compiler.h so that INLINE may be
  70. +     conditionally overriden even when __GNUC__
  71. + == sync with mntlib 40
  72. + ***** abort.c
  73. + ----------------------------
  74. + revision 39.2    
  75. + date: 1993/10/28 17:54:14;  author: entropy;  state: Exp;  lines: +20 -2
  76. + Fix for the TOS lib, and also remove a POSIX violation.
  77. + =============================================================================
  78. + ***** utime.c
  79. + ----------------------------
  80. + revision 39.2    
  81. + date: 1993/10/27 15:01:02;  author: entropy;  state: Exp;  lines: +16 -1
  82. + Implement the Dcntl() versionof FUTIME in utime().  Comment out the
  83. + kludge for directories in the Fcntl() version.
  84. + ==end sync
  85. + mincl: ++jrb
  86. +     undo the above change for memset, keep them seperate as there
  87. +     are util there that want one without the other. what the heck, its
  88. +     only about a  dozen bytes.
  89. + ==sync with mntlib 41
  90. + ***** nlist.c
  91. + ----------------------------
  92. + revision 40.2    
  93. + date: 1993/10/31 09:24:14;  author: hohmuth;  state: Exp;  lines: +3 -3
  94. + add a few typecasts for __MSHORT__
  95. + =============================================================================
  96. + ***** strerror.c
  97. + ----------------------------
  98. + revision 40.2    
  99. + date: 1993/10/31 11:33:36;  author: entropy;  state: Exp;  lines: +59 -1
  100. + Add support for the socket lib.
  101. + =============================================================================
  102. + ***** utime.c
  103. + ----------------------------
  104. + revision 40.2    
  105. + date: 1993/10/31 09:25:04;  author: hohmuth;  state: Exp;  lines: +1 -1
  106. + make assignments used as truth values clearer, to avoid
  107. + spurious warnings
  108. + =============================================================================
  109. + ***** wcmb.c
  110. + ----------------------------
  111. + revision 40.2    
  112. + date: 1993/10/31 09:25:16;  author: hohmuth;  state: Exp;  lines: +2 -2
  113. + make assignments used as truth values clearer, to avoid
  114. + spurious warnings
  115. + =============================================================================
  116. + ***** wcscat.c
  117. + ----------------------------
  118. + revision 40.2    
  119. + date: 1993/10/31 09:25:24;  author: hohmuth;  state: Exp;  lines: +2 -2
  120. + make assignments used as truth values clearer, to avoid
  121. + spurious warnings
  122. + =============================================================================
  123. + ***** include/PatchLev.h
  124. + ----------------------------
  125. + revision 40.2    
  126. + date: 1993/10/30 10:30:02;  author: entropy;  state: Exp;  lines: +1 -1
  127. + -
  128. + =============================================================================
  129. + ***** include/errno.h
  130. + ----------------------------
  131. + revision 40.2    
  132. + date: 1993/10/31 11:03:32;  author: entropy;  state: Exp;  lines: +40 -1
  133. + Add support for the socket library.
  134. + =============================================================================
  135. + ***** include/osbind.h
  136. + ----------------------------
  137. + revision 40.3    
  138. + date: 1993/10/31 09:23:14;  author: hohmuth;  state: Exp;  lines: +3 -3
  139. + fix prototypes for Pure C: gemdos(), bios(), xbios()
  140. + =============================================================================
  141. + == end sync
  142. + math.h:: ++jrb
  143. +     allow define NO_INLINE_MATH to override _M68881_. Also, check
  144. +     for __GNUC_INLINE__ as a pre-requisite to inlining (so the  user
  145. +     may override globally with  __NO_INLINE__.
  146. + crt0.c:: ++jrb
  147. +     put a section change directive back to .data  at the end of the asm()
  148. +     block. in gcc 2.5.X the compiler does not reset the block type
  149. +     by emitting an appropriate .directive after a asm(). this was causing
  150. +     problems with -mbaserel (reloc of acc_argv was always out of range).
  151. + strerror.c:: ++jrb
  152. +     make sys_errlist[] a char *const like _sock_errlist[].
  153. + ---------------------------- Patchlevel 95 ---------------------------
  154. ===================================================================
  155. RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/PatchLev.h,v
  156. retrieving revision 1.70
  157. diff -c -r1.70 PatchLev.h
  158. *** 1.70    1993/10/26 23:48:28
  159. --- PatchLev.h    1993/11/17 17:03:47
  160. ***************
  161. *** 1,5 ****
  162.   
  163. ! #define    PatchLevel "94"
  164.   
  165.   /*
  166.    *
  167. --- 1,5 ----
  168.   
  169. ! #define    PatchLevel "95"
  170.   
  171.   /*
  172.    *
  173. ===================================================================
  174. RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/crt0.c,v
  175. retrieving revision 1.24
  176. diff -c -r1.24 crt0.c
  177. *** 1.24    1993/03/16 22:09:01
  178. --- crt0.c    1993/11/17 03:14:36
  179. ***************
  180. *** 221,227 ****
  181.   1:                     /* heap base specified */
  182.        movl    " Heapbase ",sp         /* setup sp        */
  183.        addl    " Stksize ",sp        
  184. !      jra    __acc_main");           /* acc main          */
  185.                          /* dont even think of */
  186.                          /* dropping through    */
  187.   
  188. --- 221,228 ----
  189.   1:                     /* heap base specified */
  190.        movl    " Heapbase ",sp         /* setup sp        */
  191.        addl    " Stksize ",sp        
  192. !      jra    __acc_main
  193. !     .data");               /* acc main          */
  194.                          /* dont even think of */
  195.                          /* dropping through    */
  196.   
  197. ===================================================================
  198. RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/mincl,v
  199. retrieving revision 1.32
  200. diff -c -r1.32 mincl
  201. *** 1.32    1993/10/26 23:48:33
  202. --- mincl    1993/11/16 23:28:18
  203. ***************
  204. *** 47,53 ****
  205.   
  206.   STRING = strcat.o strchr.o strcmp.o strcpy.o strcspn.o strdup.o \
  207.       strlen.o strncat.o strncmp.o strncpy.o strpbrk.o strrchr.o strspn.o \
  208. !     strtok.o strstr.o memccpy.o memcmp.o memchr.o \
  209.       bcopy.o bcmp.o bzero.o strerror.o strcoll.o \
  210.       stricmp.o strnicmp.o
  211.   #
  212. --- 47,53 ----
  213.   
  214.   STRING = strcat.o strchr.o strcmp.o strcpy.o strcspn.o strdup.o \
  215.       strlen.o strncat.o strncmp.o strncpy.o strpbrk.o strrchr.o strspn.o \
  216. !     strtok.o strstr.o memccpy.o memcmp.o memchr.o memset.o \
  217.       bcopy.o bcmp.o bzero.o strerror.o strcoll.o \
  218.       stricmp.o strnicmp.o
  219.   #
  220. ***************
  221. *** 105,110 ****
  222. --- 105,113 ----
  223.   %.o : %.cpp
  224.       $(CC) $(PPFLAGS) -c $<
  225.   
  226. + %.o : %.s
  227. +     $(CC) $(CFLAGS) -c $<
  228.   #
  229.   # integer only io stuff
  230.   idoprnt.o: doprnt.c
  231. ===================================================================
  232. RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/read.c,v
  233. retrieving revision 1.17
  234. diff -c -r1.17 read.c
  235. *** 1.17    1992/04/13 15:50:45
  236. --- read.c    1993/10/30 18:11:48
  237. ***************
  238. *** 32,39 ****
  239.   
  240.   #define    iswhite(c)    ((c) == ' ' || (c) == '\t')
  241.   #define    isvisable(c)    ((unsigned char)(c) >= ' ')
  242. ! #define    echochar(fd, c)    if (__ttymode & ECHO) (void) _echochar(fd, c); else
  243. ! #define    delchar(fd, n)    if (__ttymode & ECHO) _delchar(fd, n); else
  244.   
  245.   extern int    errno;
  246.   extern int    __col_pos;    /* defined in write.c */
  247. --- 32,40 ----
  248.   
  249.   #define    iswhite(c)    ((c) == ' ' || (c) == '\t')
  250.   #define    isvisable(c)    ((unsigned char)(c) >= ' ')
  251. ! #define echochar(fd, c) ((void)((__ttymode & ECHO) && _echochar((fd), (c))))
  252. ! #define delchar(fd, n)  ((void)((__ttymode & ECHO) ?  \
  253. !                                                 _delchar((fd), (n)),0 : 0 ))
  254.   
  255.   extern int    errno;
  256.   extern int    __col_pos;    /* defined in write.c */
  257. ===================================================================
  258. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/abort.c,v
  259. retrieving revision 1.6
  260. diff -c -r1.6 abort.c
  261. *** 1.6    1993/10/26 23:52:14
  262. --- abort.c    1993/10/28 18:14:22
  263. ***************
  264. *** 3,16 ****
  265.   #include <signal.h>
  266.   #include <stdlib.h>
  267.   #include <unistd.h>
  268.   #include "lib.h"
  269.   
  270.   #ifndef SIGABRT
  271.   #define SIGABRT SIGIOT
  272.   #endif
  273.   
  274. ! __EXITING abort()
  275.   {
  276.       raise(SIGABRT);
  277.       exit(127);
  278.   }
  279. --- 3,35 ----
  280.   #include <signal.h>
  281.   #include <stdlib.h>
  282.   #include <unistd.h>
  283. + #include <mintbind.h>
  284.   #include "lib.h"
  285.   
  286.   #ifndef SIGABRT
  287.   #define SIGABRT SIGIOT
  288.   #endif
  289.   
  290. ! extern int __mint;
  291. ! __EXITING
  292. ! abort()
  293.   {
  294. + #ifdef __MINT__
  295. +     if (__mint)
  296. +         (void) Pkill(Pgetpid(), SIGABRT);
  297. + #if 0
  298. +     /* Do not do this because it violates POSIX (raise() and
  299. +        kill() are available for the user unless <signal.h> is
  300. +        included in user's source).  Fix later.
  301. +     */
  302. +     else
  303. +         raise(SIGABRT);
  304. + #endif
  305. +     _fclose_all_files();
  306. +     _exit(127);
  307. + #else
  308.       raise(SIGABRT);
  309.       exit(127);
  310. + #endif
  311.   }
  312. ===================================================================
  313. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/nlist.c,v
  314. retrieving revision 1.1
  315. diff -c -r1.1 nlist.c
  316. *** 1.1    1993/10/26 23:52:49
  317. --- nlist.c    1993/11/05 01:59:16
  318. ***************
  319. *** 31,37 ****
  320.       if( !symread )
  321.       {
  322.           symread=min(sizeof(symbuf),symcount);
  323. !         if(symread!=read(sym_fd,symbuf,symread))
  324.           {
  325.               close(sym_fd);
  326.                           symread=0;
  327. --- 31,37 ----
  328.       if( !symread )
  329.       {
  330.           symread=min(sizeof(symbuf),symcount);
  331. !         if((int)symread != read(sym_fd,symbuf, (int)symread))
  332.           {
  333.               close(sym_fd);
  334.                           symread=0;
  335. ***************
  336. *** 76,82 ****
  337.       if( ( sym_fd=open(file,O_RDONLY) ) == -1 ) return -1;            
  338.   
  339.       /* Read in file header */
  340. !     read(sym_fd,&hbuf,sizeof(hbuf));
  341.   
  342.       /* Executable file ? */
  343.       if(A_BADMAG(hbuf)) 
  344. --- 76,82 ----
  345.       if( ( sym_fd=open(file,O_RDONLY) ) == -1 ) return -1;            
  346.   
  347.       /* Read in file header */
  348. !     read(sym_fd,&hbuf,(int) sizeof(hbuf));
  349.   
  350.       /* Executable file ? */
  351.       if(A_BADMAG(hbuf)) 
  352. ***************
  353. *** 87,93 ****
  354.       }
  355.   
  356.       /* Any symbols? */
  357. !     if( !(symcount=hbuf.a_syms) )
  358.       {
  359.           errno=EDOM;
  360.           return -1;
  361. --- 87,93 ----
  362.       }
  363.   
  364.       /* Any symbols? */
  365. !     if((symcount=hbuf.a_syms) == 0)
  366.       {
  367.           errno=EDOM;
  368.           return -1;
  369. ===================================================================
  370. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/strerror.c,v
  371. retrieving revision 1.7
  372. diff -c -r1.7 strerror.c
  373. *** 1.7    1993/07/10 16:37:03
  374. --- strerror.c    1993/11/17 00:04:46
  375. ***************
  376. *** 3,9 ****
  377.   
  378.   static char nullstr[] = "unknown error";
  379.   
  380. ! char *sys_errlist[] =
  381.       {
  382.       "OK",                    /* 0 */
  383.       "error",                /* 1 */
  384. --- 3,9 ----
  385.   
  386.   static char nullstr[] = "unknown error";
  387.   
  388. ! char *const sys_errlist[] =
  389.       {
  390.       "OK",                    /* 0 */
  391.       "error",                /* 1 */
  392. ***************
  393. *** 96,106 ****
  394.       "range error",                /* 88 */
  395.       "domain error",                /* 89 */
  396.       "I/O error",                /* 90 */
  397. !     "disk full"                /* 91 */
  398.       };
  399.   
  400.   int    sys_nerr = (int)(sizeof(sys_errlist)/sizeof(sys_errlist[0]));
  401.   
  402.   /*
  403.    * strerror - map error number to descriptive string
  404.    *
  405. --- 96,160 ----
  406.       "range error",                /* 88 */
  407.       "domain error",                /* 89 */
  408.       "I/O error",                /* 90 */
  409. !     "disk full",                /* 91 */
  410. !     nullstr,                /* 92 */
  411. !     nullstr,                /* 93 */
  412. !     nullstr,                /* 94 */
  413. !     nullstr,                /* 95 */
  414. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 96 - 100 */
  415. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 101 - 105 */
  416. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 106 - 110 */
  417. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 111 - 115 */
  418. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 116 - 120 */
  419. !     nullstr, nullstr, nullstr, nullstr, nullstr,    /* 121 - 125 */
  420. !     nullstr,                /* 126 */
  421. !     nullstr,                /* 127 */
  422. !     "interrupted system call"        /* 128 */
  423.       };
  424.   
  425.   int    sys_nerr = (int)(sizeof(sys_errlist)/sizeof(sys_errlist[0]));
  426.   
  427. + #ifdef __MINT__
  428. + /* Support for Kay Roemer's socket library */
  429. + char *const _sock_errlist[] = {
  430. +     "Socket operation on non-socket",        /* 300 */
  431. +     "Destination address required",
  432. +     "Message too long",
  433. +     "Protocol wrong type for socket",
  434. +     "Protocol not available",
  435. +     "Protocol not supported",
  436. +     "Socket type not supported",
  437. +     "Operation not supported",
  438. +     "Protocol family not supported",
  439. +     "Address family not supported by protocol",
  440. +     "Address already in use",
  441. +     "Cannot assign requested address",
  442. +     "Network is down",
  443. +     "Network is unreachable",
  444. +     "Network dropped conn. because of reset",
  445. +     "Software caused connection abort",
  446. +     "Connection reset by peer",
  447. +     "Socket is already connected",
  448. +     "Socket is not connected",
  449. +     "Cannot send after shutdown",
  450. +     "Connection timed out",
  451. +     "Connection refused",
  452. +     "Host is down",
  453. +     "No route to host",
  454. +     "Operation already in progress",
  455. +     "Operation now in progress",
  456. +     "Operation would block"
  457. + };
  458. + int    _sock_nerr = (int)(sizeof (_sock_errlist) / sizeof (char *));
  459. + #define MINSOCKERR    300
  460. + #define MAXSOCKERR    (MINSOCKERR + _sock_nerr)
  461. + #endif
  462.   /*
  463.    * strerror - map error number to descriptive string
  464.    *
  465. ***************
  466. *** 115,120 ****
  467. --- 169,178 ----
  468.   
  469.       if (errnum >= 0 && errnum < sys_nerr)
  470.           return(sys_errlist[errnum]);
  471. + #ifdef __MINT__
  472. +     else if (errnum >= MINSOCKERR && errnum < MAXSOCKERR)
  473. +         return(_sock_errlist[errnum - MINSOCKERR]);
  474. + #endif
  475.       else
  476.           return(nullstr);
  477.   }
  478. ===================================================================
  479. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/utime.c,v
  480. retrieving revision 1.13
  481. diff -c -r1.13 utime.c
  482. *** 1.13    1993/10/26 23:53:05
  483. --- utime.c    1993/11/05 01:59:17
  484. ***************
  485. *** 85,100 ****
  486.       settime.acdate = (unsigned short) (actime & 0xFFFF);
  487.       settime.modtime = (unsigned short) ((modtime >> 16) & 0xFFFF);
  488.       settime.moddate = (unsigned short) (modtime & 0xFFFF);
  489.       fh = (int) Fopen(filename, 2);
  490.       if (fh < 0) {
  491.           /* Kludge:  return success for dirs even though we failed */
  492.           if ((fh == -ENOENT) && (Fattrib(filename, 0, 0) == FA_DIR))
  493.               return 0;
  494.           errno = -fh;
  495.           return -1;
  496.       }
  497.   
  498. -     res = -EINVAL;
  499.       if (__mint > 90) {
  500.           if (tset)
  501.               res = Fcntl(fh, (long)&settime, FUTIME);
  502. --- 85,115 ----
  503.       settime.acdate = (unsigned short) (actime & 0xFFFF);
  504.       settime.modtime = (unsigned short) ((modtime >> 16) & 0xFFFF);
  505.       settime.moddate = (unsigned short) (modtime & 0xFFFF);
  506. +     res = -EINVAL;
  507. +     if (__mint > 92) {
  508. +         if (tset)
  509. +             res = Dcntl(FUTIME, (long) filename, (long) &settime);
  510. +         else
  511. +             res = Dcntl(FUTIME, (long) filename, (long) 0);
  512. +     }
  513. +     if (res != -EINVAL) {
  514. +         if (res < 0) {
  515. +             errno = (int) -res;
  516. +             return -1;
  517. +         }
  518. +         return 0;
  519. +     }
  520.       fh = (int) Fopen(filename, 2);
  521.       if (fh < 0) {
  522. + #if 0
  523.           /* Kludge:  return success for dirs even though we failed */
  524.           if ((fh == -ENOENT) && (Fattrib(filename, 0, 0) == FA_DIR))
  525.               return 0;
  526. + #endif
  527.           errno = -fh;
  528.           return -1;
  529.       }
  530.   
  531.       if (__mint > 90) {
  532.           if (tset)
  533.               res = Fcntl(fh, (long)&settime, FUTIME);
  534. ***************
  535. *** 126,132 ****
  536.       date = (int) (dtime & 0xffff);
  537.       time = (int) (dtime >> 16) & 0xffff;
  538.   
  539. !     if ((r = Tsetdate(date)) || (r = Tsettime(time))) {
  540.           errno = r == -1 ? EBADARG : (int) -r;
  541.           return -1;
  542.       }
  543. --- 141,147 ----
  544.       date = (int) (dtime & 0xffff);
  545.       time = (int) (dtime >> 16) & 0xffff;
  546.   
  547. !     if (((r = Tsetdate(date)) != 0) || ((r = Tsettime(time)) != 0)) {
  548.           errno = r == -1 ? EBADARG : (int) -r;
  549.           return -1;
  550.       }
  551. ===================================================================
  552. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/wcmb.c,v
  553. retrieving revision 1.1
  554. diff -c -r1.1 wcmb.c
  555. *** 1.1    1993/10/26 23:53:09
  556. --- wcmb.c    1993/11/05 01:59:18
  557. ***************
  558. *** 31,37 ****
  559.       
  560.       if(mbstr == NULL) mbstr = "";
  561.       
  562. !     while(revcnt && (*wstr++ = *mbstr++)) revcnt--;
  563.       
  564.       return maxlen - revcnt;
  565.   }
  566. --- 31,37 ----
  567.       
  568.       if(mbstr == NULL) mbstr = "";
  569.       
  570. !     while(revcnt && ((*wstr++ = *mbstr++) != 0)) revcnt--;
  571.       
  572.       return maxlen - revcnt;
  573.   }
  574. ***************
  575. *** 62,68 ****
  576.       
  577.       if(wstr == NULL) wstr = _wnull; /* Better avoid L"". */
  578.       
  579. !     while(revcnt && (*mbstr++ = (char) *wstr++)) revcnt--;
  580.       
  581.       return maxlen - revcnt;
  582.   }
  583. --- 62,68 ----
  584.       
  585.       if(wstr == NULL) wstr = _wnull; /* Better avoid L"". */
  586.       
  587. !     while(revcnt && ((*mbstr++ = (char) *wstr++) != 0)) revcnt--;
  588.       
  589.       return maxlen - revcnt;
  590.   }
  591. ===================================================================
  592. RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/wcscat.c,v
  593. retrieving revision 1.1
  594. diff -c -r1.1 wcscat.c
  595. *** 1.1    1993/10/27 00:06:00
  596. --- wcscat.c    1993/11/05 01:59:18
  597. ***************
  598. *** 19,25 ****
  599.       {
  600.           for (dscan = dst; *dscan; dscan++)
  601.           continue;
  602. !         while ((*dscan++ = *sscan++))
  603.               continue;
  604.       }
  605.       return(dst);
  606. --- 19,25 ----
  607.       {
  608.           for (dscan = dst; *dscan; dscan++)
  609.           continue;
  610. !         while ((*dscan++ = *sscan++) != 0)
  611.               continue;
  612.       }
  613.       return(dst);
  614. ***************
  615. *** 43,49 ****
  616.           for (dscan = dst; *dscan; dscan++)
  617.           continue;
  618.           count = n;
  619. !         while ((c = *sscan++) && --count >= 0)
  620.           *dscan++ = c;
  621.           *dscan = 0;
  622.       }
  623. --- 43,49 ----
  624.           for (dscan = dst; *dscan; dscan++)
  625.           continue;
  626.           count = n;
  627. !         while (((c = *sscan++) != 0) && --count >= 0)
  628.           *dscan++ = c;
  629.           *dscan = 0;
  630.       }
  631.